diff --git a/system/database/DB_active_rec.php b/system/database/DB_active_rec.php
index 4736858..4a88bd8 100644
--- a/system/database/DB_active_rec.php
+++ b/system/database/DB_active_rec.php
@@ -826,7 +826,7 @@
 	 * @param	mixed	the where clause
 	 * @return	object
 	 */
-	function update($table = '', $set = NULL, $where = null)
+	function update($table = '', $set = NULL, $where = null, $limit = NULL)
 	{
 		if ( ! is_null($set))
 		{
@@ -860,8 +860,13 @@
 		{
 			$this->where($where);
 		}
+
+		if ($limit != null)
+		{
+			$this->limit($limit);
+		}
 		
-		$sql = $this->_update($this->dbprefix.$table, $this->ar_set, $this->ar_where);
+		$sql = $this->_update($this->dbprefix.$table, $this->ar_set, $this->ar_where, $this->ar_limit);
 		
 		$this->_reset_write();
 		return $this->query($sql);
@@ -1101,6 +1106,7 @@
 		$this->ar_set		= array();
 		$this->ar_from		= array();
 		$this->ar_where		= array();
+		$this->ar_limit		= FALSE;
 	}
 	
 }
diff --git a/system/database/drivers/mssql/mssql_driver.php b/system/database/drivers/mssql/mssql_driver.php
index 8961045..613be69 100644
--- a/system/database/drivers/mssql/mssql_driver.php
+++ b/system/database/drivers/mssql/mssql_driver.php
@@ -421,14 +421,16 @@
 	 * @param	array	the where clause
 	 * @return	string
 	 */
-	function _update($table, $values, $where)
+	function _update($table, $values, $where, $limit = FALSE)
 	{
 		foreach($values as $key => $val)
 		{
 			$valstr[] = $key." = ".$val;
 		}
+		
+		$limit = (!$limit) ? '' : ' LIMIT '.$limit;
 	
-		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where);
+		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where).$limit;
 	}
 	
 	// --------------------------------------------------------------------
diff --git a/system/database/drivers/mysql/mysql_driver.php b/system/database/drivers/mysql/mysql_driver.php
index 2d91c59..aaa9cc6 100644
--- a/system/database/drivers/mysql/mysql_driver.php
+++ b/system/database/drivers/mysql/mysql_driver.php
@@ -439,14 +439,16 @@
 	 * @param	array	the where clause
 	 * @return	string
 	 */
-	function _update($table, $values, $where)
+	function _update($table, $values, $where, $limit = FALSE)
 	{
 		foreach($values as $key => $val)
 		{
 			$valstr[] = $key." = ".$val;
 		}
+		
+		$limit = (!$limit) ? '' : ' LIMIT '.$limit;
 	
-		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where);
+		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where).$limit;
 	}
 	
 	// --------------------------------------------------------------------
diff --git a/system/database/drivers/mysqli/mysqli_driver.php b/system/database/drivers/mysqli/mysqli_driver.php
index 0991170..f6f106e 100644
--- a/system/database/drivers/mysqli/mysqli_driver.php
+++ b/system/database/drivers/mysqli/mysqli_driver.php
@@ -432,14 +432,16 @@
 	 * @param	array	the where clause
 	 * @return	string
 	 */
-	function _update($table, $values, $where)
+	function _update($table, $values, $where, $limit = FALSE)
 	{
 		foreach($values as $key => $val)
 		{
 			$valstr[] = $key." = ".$val;
 		}
+		
+		$limit = (!$limit) ? '' : ' LIMIT '.$limit;
 	
-		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where);
+		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where).$limit;
 	}
 	
 	// --------------------------------------------------------------------
diff --git a/system/database/drivers/oci8/oci8_driver.php b/system/database/drivers/oci8/oci8_driver.php
index e6bcefe..1dd157c 100644
--- a/system/database/drivers/oci8/oci8_driver.php
+++ b/system/database/drivers/oci8/oci8_driver.php
@@ -535,14 +535,16 @@
 	 * @param   array   the where clause
 	 * @return  string
 	 */
-	function _update($table, $values, $where)
+	function _update($table, $values, $where, $limit = FALSE)
 	{
 		foreach($values as $key => $val)
 		{
 			$valstr[] = $key." = ".$val;
 		}
-
-		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where);
+		
+		$limit = (!$limit) ? '' : ' LIMIT '.$limit;
+	
+		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where).$limit;
 	}
 
 	// --------------------------------------------------------------------
diff --git a/system/database/drivers/odbc/odbc_driver.php b/system/database/drivers/odbc/odbc_driver.php
index 5e16762..66d5f89 100644
--- a/system/database/drivers/odbc/odbc_driver.php
+++ b/system/database/drivers/odbc/odbc_driver.php
@@ -394,14 +394,16 @@
 	 * @param	array	the where clause
 	 * @return	string
 	 */
-	function _update($table, $values, $where)
+	function _update($table, $values, $where, $limit = FALSE)
 	{
 		foreach($values as $key => $val)
 		{
 			$valstr[] = $key." = ".$val;
 		}
+		
+		$limit = (!$limit) ? '' : ' LIMIT '.$limit;
 	
-		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where);
+		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where).$limit;
 	}
 	
 	// --------------------------------------------------------------------
diff --git a/system/database/drivers/postgre/postgre_driver.php b/system/database/drivers/postgre/postgre_driver.php
index e54f9cc..076d87a 100644
--- a/system/database/drivers/postgre/postgre_driver.php
+++ b/system/database/drivers/postgre/postgre_driver.php
@@ -423,14 +423,16 @@
 	 * @param	array	the where clause
 	 * @return	string
 	 */
-	function _update($table, $values, $where)
+	function _update($table, $values, $where, $limit = FALSE)
 	{
 		foreach($values as $key => $val)
 		{
 			$valstr[] = $key." = ".$val;
 		}
+		
+		$limit = (!$limit) ? '' : ' LIMIT '.$limit;
 	
-		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where);
+		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where).$limit;
 	}
 	
 	// --------------------------------------------------------------------
diff --git a/system/database/drivers/sqlite/sqlite_driver.php b/system/database/drivers/sqlite/sqlite_driver.php
index aa6738c..b701d6b 100644
--- a/system/database/drivers/sqlite/sqlite_driver.php
+++ b/system/database/drivers/sqlite/sqlite_driver.php
@@ -418,14 +418,16 @@
 	 * @param	array	the where clause
 	 * @return	string
 	 */
-	function _update($table, $values, $where)
+	function _update($table, $values, $where, $limit = FALSE)
 	{
 		foreach($values as $key => $val)
 		{
 			$valstr[] = $key." = ".$val;
 		}
+		
+		$limit = (!$limit) ? '' : ' LIMIT '.$limit;
 	
-		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where);
+		return "UPDATE ".$this->_escape_table($table)." SET ".implode(', ', $valstr)." WHERE ".implode(" ", $where).$limit;
 	}
 	
 	// --------------------------------------------------------------------
